package com.atguigu.spzx.order.service;

import com.atguigu.spzx.model.dto.api.ApiOrderSaveDTO;
import com.atguigu.spzx.model.entity.order.OrderInfo;
import com.atguigu.spzx.model.vo.order.ApiOrderTradeVO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;

/**
 * @author LT
 * @create 2024-03-29-19:45
 */

public interface OrderService extends IService<OrderInfo> {
    ApiOrderTradeVO trade();

    ApiOrderTradeVO buy(Long skuId);

    Long submitOrder(ApiOrderSaveDTO orderSaveDTO);

    PageInfo<OrderInfo> listByStatus(Integer pageNum, Integer pageSize, Integer orderStatus);

    OrderInfo getByOrderInfoOrderNo(Long orderNo);

    void updateStockAndSale(String orderNo);

    void updatePayTypeAndOrderStatus(Integer payType, String paymentStatus, String orderNo);

}
